Method for controlling devices within a network by dedicated remote control and devices for carrying out said method

ABSTRACT

The invention relates to a method of controlling devices linked by a digital communication network, a device having a control device—typically a remote control—that is dedicated to it; the control device comprising command input means—typically keys—for entering commands. The method consists initially in running on each device to be controlled a step for configuring the associations between network device functions and command input means, then, when a means is activated, in sending a message including the code corresponding to the device associated with this key. A refinement consists in associating a number of devices with one and the same key, and in sending as many messages as there are associated devices when the key is activated. The invention also relates to a device provided with a remote control and an interface for implementing the method.

This application claims the benefit, under 35 U.S.C. § 365 ofInternational Application PCT/EP04/050006, filed Jan. 8, 2004, which waspublished in accordance with PCT Article 21(2) on Oct. 7, 2004 in Frenchand which claims the benefit of French patent application No. 0300223,filed Jan. 10,2003.

FIELD OF THE INVENTION

The invention relates to a method of managing resources within a digitalcommunication network, and the resources associated with the method. Theinvention applies more particularly when the resources are user commandinput means.

BACKGROUND

A digital communication network comprises devices interlinked by acommunication bus, for example the IEEE 1394 bus, or the IP bus, bywired or wireless means. A domestic type digital communication networkincludes, for example, the following devices: terminals enabling usersto store and view audiovisual documents, digital television receivers (aset-top-box, for example) capable of receiving audiovisual documentsoriginating from a transmission network or from a point-by-point typenetwork (Internet for example), an audiovisual document storage device(a video recorder), a modem, etc. The list of devices is not exhaustive.There can be multiple instances of the devices within the digitalcommunication network; for example, it is possible to imagine that, in ahome, each room has a terminal of the same type. Each of the connecteddevices has a command input means which can be a keyboard, a mouse, aremote control, a joystick, a voice recognition means using amicrophone, or any other means enabling a user to act on an electronicdevice. In other cases, the devices are not provided with a remotecontrol and can be controlled only by front panel buttons.

The devices connected to a 1394 network can, for example,intercommunicate using the HAVi protocol by providing the others with asoftware interface called an application programming interface (API). Inthis way, if a first device needs the API of a second device, they canintercommunicate. Some devices may be provided with dedicated inputdevices. It may be advantageous for a user to control a device on thenetwork using an input device dedicated to another device.

Patent application WO01/50219, filed by VM LABS Inc and published on 12Jul. 2001, describes a system that can be used to connect a number ofuser command input devices such as: a joystick, a mouse and a keyboard.All the equipment described by this system is linked by a 1394 bus to amaster central processing unit: a microcomputer. This system is thuscentralized and the user command input devices are in fact dedicated tothe master central processing unit which receives and processes thecommands sent by the user. A user command generated on such an inputdevice but intended for another central processing unit must passthrough the master central processing unit which remains the unitcontrolling the input device, although the latter is not the centralprocessing unit receiving the command. This way of communicating is notefficient because the device connected to the input device keeps itsmaster status even though it should be considered only as anintermediate device.

Another solution would involve considering each command input means as aHAVi type device. Each device on the network having its owncommunication API (called Havlet), the command input device mustdownload as many APIs as there are devices, which makes communicationcomplicated and multiplies the interchanges. Such a solution means that,before an input device can be used, the user must always indicate to thenetwork the device to be used and therefore the Havlet to be loaded.

U.S. Pat. No. 6,466,971—HUMPLEMAN describes in its preamble howaudiovisual devices are often controlled from one and the same remotecontrol. Because of this, the manufacturers have developed control unitsfor controlling the devices from one and the same interface. If a device(2) wants to be controlled by another device (1), the device (2)downloads its interface API into the device (1) which can then controlit. By extension, if a number of devices (2, 2′, 2″) want to becontrolled by the device (1), it is a different interface that is loadedeach time. The present invention avoids having to download differentinterfaces and thus allows for a far greater degree of standardization.

US document 2002/087746—LUDTKE also describes how, if a device (2) wantsto be controlled by another device (1), the device (2) downloads itsinterface API into the device (1) which can then control it.

The present invention also enables the sharing of resources enabling auser to enter user commands to be better organized, even if the inputmeans is dedicated to a device on the network.

SUMMARY OF THE INVENTION

The present invention consists of a method of controlling a number offirst devices linked by a communication network to a second deviceassociated with a control device which is dedicated to it, the controldevice comprising command input means; wherein it comprises:

-   -   a step for starting, on each first device to be controlled, a        step for configuring at least one association between a function        of a first device and an input means, the association being        transmitted by a request from a first device to a management        interface of the control device available in the second device,    -   when one of the input means of the control device is activated:        a step for transmission by the second device to the first device        associated with this means of inputing control information        identifying the means activated to execute the function on the        first device.

In this way, each device of the network can communicate with a devicehaving a remote control and a management interface, and can configurekeys of the remote control for its own use and not for the devicededicated to this remote control.

With the management interface of the control device, the presentinvention enables this device, typically a remote control, to control anumber of devices with a generic interface. For this, these devices mustregister with this interface and, contrary to what happens in thestandard HAVi protocol and in the abovementioned prior art, the deviceto be controlled calls the management interface and registers with thelatter. The user programs associations between command input means,typically keys of the remote control and a functionality of a devicechosen from a plurality. Thus, the control device becomes generic to anumber of devices even though, at the outset, it is dedicated to adefined device. The interface is called by the devices that want to becontrolled in this way.

According to a refinement, in response to a configuration request, thesecond device sends information indicating the absence of availabilityof the or each input means identified in the request. In this way, thedevice knows that the command input means is not available and that itsassociation request has not been successful.

According to another refinement, in response to a configuration request,the second device sends information indicating the validation of theassociation on the second device of the input means identified in therequest. In this way, the device knows that the command input means isavailable and that its association request is registered.Advantageously, it also knows if other first devices are associated withthe input means.

According to another refinement, when a device is deactivated, theassociations with this device are deleted to allow other associationswith other devices for this means.

According to another refinement, a configuration request associates anumber of input means having a common characteristic with a firstdevice. In this way, a number of associations with a number of inputmeans can be set up in the same request.

According to another refinement, the second device transmits the list ofavailable input means. The user can thus choose from the input meansthose that he wants to associate with the device currently beingconfigured. According to another refinement, the second device transmitsthe list of associations programmed in the preceding configurationsteps, so informing a first device as to what has already beenconfigured on the second device, and enabling it to check that its ownassociations have indeed been registered.

Another subject of the invention is a device having a means ofconnection with a communication network and receiving signals from adedicated control device provided with command input means such as keys;wherein it includes an association means activated by another deviceconnected to the network, said means storing in memory association databetween an input means and the identifier of this other device, and ameans of transmitting a block of data over the communication network,said transmission means being activated when a command is input on thededicated control device, said data block including an identifier of thecommand input and being intended for the device associated with thiscommand.

BRIEF DESCRIPTION OF THE DRAWINGS

Other features and advantages of the present invention will becomeapparent from the description of the exemplary embodiments below, givenby way of non-limiting examples, with reference to the appended figuresin which:

FIG. 1 represents a diagram of a digital communication network accordingto an exemplary embodiment of the invention.

FIG. 2 represents the HAVi architecture on the device having a remotecontrol and the situation of the generic API.

DETAILED DESCRIPTION

A digital communication network according to a present exemplaryembodiment is described diagrammatically in FIG. 1; it is preferably,but not exclusively, domestic. The devices are interlinked by a digitalbus using, for example, the HAVi standard based on an IEEE 1394 typearchitecture. It therefore has an “FCM” type API, enabling other devicesto intercommunicate.

The domestic network comprises, for example, the following devices:

-   -   a tuner 1 for receiving transmissions from a transmission        network. This device contains its API called “FCM Tuner”.    -   a video recorder, or “VCR” 2 for recording transmissions        received for example from the tuner 1. This device also includes        its API called “FCM VCR”.    -   a television screen 3 for viewing transmissions recorded in the        VCR 2 or received from the tuner 1. This device has its API        called “FCM Display” to control the display of the transmissions        and another API called “FCM Remote Control” for the        communication interface with a remote control dedicated to the        screen.    -   an audio amplifier 4 for reproducing the audio signals of the        transmissions. This device also contains its API called “FCM        Amplifier”.

Digital communication networks provided with other communicationprotocols can implement the present invention, such as, for example, theIP network linking UPnP devices. In such a network, the devices willlook for their graphical interface via an HTML page which will bedisplayed using a browser.

Let us assume that a user chooses to control the Tuner, the VCR and theamplifier with the remote control dedicated to the television screen.For example, the user decides that:

-   -   the “P+” and “P−” keys control the tuner and are used to choose        the channel.    -   the “V+” and “V−” keys control the audio amplifier 4 and are        used to increase or reduce the sound volume.    -   the “PLAY”, “STOP”, “PAUSE”, “FAST FORWARD”, “FAST REWIND” keys        control the familiar functions of a VCR.

The user will first of all configure the communication interfaces ofthese four devices to assign to the corresponding device one or morekeys of the remote control. For this, on each of the three devices to becontrolled, the user runs a configuration program available on eachdevice. Initially, the configuration program sends a request over thedigital communication network to find out whether a generic API isavailable. If a negative response is received (or no response at all),the configuration program informs the user of this. However, if apositive response is received, the configuration program receives fromthe API the list of control means, for example: buttons, switches, oreven a list of words recognized by a voice recognition engine, availableon the remote control associated with the API.

The user can then choose the control means to be associated with thedevice on which the configuration program is running. The configurationis set up using a user interface, for example an LCD screen on thedevice to be configured and a number of keys on the front of the device,or even a graphical interface downloaded to an HAVi screen (havlet)enabling dialogue with the device to be configured. The configurationprogram sends to the generic API configuration requests which will beexplained later. The configuration step ends when all the associationsbetween the control means and the device to be controlled have beenregistered on the generic API.

The generic API contained in the device having a dedicated remotecontrol, in this instance the television screen 3, may be resident (andstored in a non-volatile memory) or downloadable via a network. In use,the API checks the codes sent by the remote control and, according tothe associations received, determines whether the command is intendedfor the television screen 3 or for one of the three other devicesconnected to the network. In this latter case, the API transmits thecommand to the associated device.

FIG. 2 shows the HAVi architecture on the device having a remote controland situates the generic API within the HAVi stack. The generic API is amodule declared as a functional component module (FCM) and available onthe device controlled preferentially by this remote control. It isrepresented by a pentagon in FIG. 2. This device, being declared to allthe HAVi network, proposes the API to the other devices connected to thenetwork so that they can be aware of it. Then, during the configurationstep described previously, these other devices can send to the devicehaving a dedicated remote control one or more control/deviceassociations. The non-volatile memory of each device associated with adedicated remote control registers the association, the memory being anon-volatile flash type circuit or a hard disk, for example.

According to the prior art, when a first device wants to control asecond device, it has to download a graphical interface program called a“Havlet” according to the HAVi standard or called an HTML presentationpage according to the UPnP standard of the device having the genericAPI. For the user, this consists initially in downloading a graphicalapplication to a screen (which totally or partly conceals theaudio/video document already present on the screen, and thereforebecomes a nuisance for the user). Then, in a second step, the usernavigates within this application using the keys of the remote controlassociated with the screen to focus the application on desired graphicbutton and press the OK key on the remote control. The generic APIavoids this tedious step for the user by simplifying the procedure on asimple command such as to alter the volume of an amplifier via the V+and V− buttons or to flip from one channel to another via the P+ P−buttons, and which consumes memory space and communication time. In aparticularly simple way, the generic API can be used to control numeroussimple functions, such as, for example, for a VCR, the “play”, “fastforward”, “record”, and other controls. According to the presentembodiment of the invention, the remote control does not require agraphical interface, but only the transmission of short messagesidentifying the command input by the user on a remote control, and thedevice associated with this command.

There now follows a description of an exemplary embodiment of thegeneric API. According to the present exemplary embodiment, the genericAPI is a software module executing various functions corresponding toservices accessible to another HAVi-type declared device. Table 1 belowsummarizes the various functions accessible in the API:

TABLE 1 Function number Function name 1 CR: connect 2 CR: disconnect 3CR: is supported 4 CR: get capabilities 5 CR: add key 6 CR: remove key 7CR: add all keys 8 CR: remove all keys 9 CR: add all arrow keys 10 CR:remove all arrow keys 11 CR: add all numeric keys 12 CR: remove allnumeric keys 13 CR: add all color keys 14 CR: remove all color keys 15CR: force feedback event 16 RC event

The 16 functions are described in the annex in the standard HAVilanguage. This appendix can be used to implement the invention in thecontext of a HAVi type architecture; it by no means limits the presentinvention to this architecture but constitutes an exemplary embodiment.

The various functions are explained below:

1-Remote Control: Connect

This function is used to start a new connection with the generic API. Adevice wants to open a new session, and sends a request. In return, thefunction delivers a single identifier called “long cid”. In this way, acommunication channel is opened between a HAVi device which wants to usethe remote control and the generic API, the identifier identifies thechannel from the other channels. One channel is set up, for example, forthe VCR, another for the tuner, a third for the amplifier. If the API isnot available, the function returns no identifier and does not open achannel.

2-Remote Control: Disconnect

This function is used to close the connection with the generic APIidentified by “long cid”, the parameter obtained following a connection.This function is used to close the communication channel opened on aconnection. The disconnect function returns an error message if theidentifier entered as an input parameter is not recognized for the API.

3—Remote Control: is Supported

This function is used to check that a “KeyCode” is known to the genericAPI and is available. For example, following a connection, the Tunerruns this function, indicating as an input parameter the code of the key“P+”. The function is boolean: if the code is supported by the API andis not associated with another HAVi device, then the function returnsthe value “True”, otherwise it returns the value “False”. This functionis used to determine in detail the state of occupancy of the keys.

4-Remote Control: Get Capabilities

This function is used to obtain an overall report in the form of a listof key codes or key code groups: either busy (output value: False) oravailable (output value: True). Keys form a group when their functionsare associated, for example the four direction arrow keys, the two keysP+ and P−, the ten keys of the numeric keypad, etc. With this function,a HAVi device knows the availability status of all the keys or groups ofkeys of the remote control associated with the generic API.

5-Remote Control: Add Key

This function is used to reserve a key code for a HAVi device thatrequests it.

When this operation is done, the key code is no longer available. Forexample, the amplifier sends the API two reservation requests, one forthe V+code and the other for the V− code, to control the volume up ordown. The reservation function returns an error code if the key code hasalready been assigned to a device.

6-Remote Control: Remove Key

This function is used to cancel the reservation of a key code for agiven HAVi device. When this operation is done, the key code is onceagain available.

7-Remote Control: Add All Codes

This function is used to reserve all the codes declared available by thegeneric API for the HAVi device that requests it. This function avoidsreserving them individually by the add key function. When this operationis done, no key codes are available. The individual reservations thathad been done before this function remain operational.

8-Remote Control: Remove All Keys

This function is the reverse of the preceding one. All the keys reservedfor the device that sends this request are available. This function isused to release properly the resources offered to the API when, forexample, the device is switched off or it is removed from the digitalcommunication network.

9-11-13-Remote Control: Add Group of Keys

This function is used to reserve a group of codes for the HAVi devicethat requests it. According to the present embodiment, there are threegroups of keys: the direction arrow keys (4 keys), covered by thefunction number 9; the numeric keys (10 keys), function number 11; thecolor keys, function number 13. The color keys vary in number accordingto the remote controls, and are used to define customized functions suchas: direct access to a predetermined menu, initialization of a devicewith parameters (sound, color, channel number, etc.) etc. The groups aredefined in the generic API, the HAVi devices can learn about them byfirst executing function 4: Get capabilities.

10-12-14-Remote Control: Remove Group of Keys

These functions are the reverse of the preceding functions 9, 11, 13.All the group of keys reserved for the device that sends this request isonce again available.

15-Remote Control: Force Feedback Event

Some remote controls have a vibrator function (force Feedback) forexample: a joystick providing gradual feedback that can be felt by theuser (for example: the joystick vibrates more or less strongly in a cargame when the player leaves the road or has an accident with his car).

Depending on the value of the “forceFeedbackIntensity” parameter, theremote control vibrates more or less strongly.

16-Remote Control: RC Event

Unlike the preceding functions, this function is not a request from aHAVi device to the API, but the transmission by the API of an eventoccurring on the remote control. When a user presses a key, the genericAPI sends to the device associated with this key a message including thekey code. For example, pressing the button PLAY on the remote controlassociated with the television is processed by the generic API whichsends a message to the VCR, this message including the “PLAY” key code.

An exemplary scenario for configuring the API for the dialogue with agiven HAVi device such as a set-top box is as follows:

-   -   Connect (function 1)    -   Get capabilities (function 4)    -   Add all arrow keys (function 9)    -   Add key: the “ENTER” key (function 5)

These functions are executed in the configuration step. Then, the usercan use the remote control to control the duly configured device. Duringthe usage step, the generic API sends event messages (see paragraph 16)to transmit to the devices concerned the commands from the user.

When the use of a device is ended, for example when the user switches itoff, the device sends a disconnect request (function 2) to the genericAPI which releases the keys associated with this device, by deletingfrom the memory the references to this device. Similarly, when a deviceis disconnected without notifying the network, mechanisms specific tothe HAVi architecture detect the disconnection and inform all the HAVidevices of the network of this event. The generic API receiving theinformation that a device is disconnected automatically releases the keycodes assigned to that device. In this way, these duly released keys canbe assigned to other devices.

The API manages a table for defining the associations between each keycode of the remote control and each HAVi device which has reserved thecode. In this way, the API can immediately check that a code isavailable and, if necessary, assign it to the device that requests it.The table has as many lines as there are control means, each line havinga position for the code of a key, for example, and another for theidentifier of the device making the reservation.

An enhancement consists in enabling the API to associate several deviceswith the same code. For example, the “OFF” function of the remotecontrol can switch off a number of HAVi devices at the same time. Thisrefinement modifies the code reservation function. This function then nolonger returns an error message when the code is not available, itreturns a message indicating that this code is already assigned to atleast one device and makes the reservation. The table in the API is alsomodified: the field for receiving the identifier of the deviceassociated with the key defined by the code can include a number ofidentifiers.

The exemplary embodiments of the invention described above were chosenfor their concrete nature. It would not, however, be possible to listexhaustively all the embodiments covered by this invention. Inparticular, any step or any means described can be replaced by anequivalent step or means without departing from the spirit of thepresent invention.

ANNEX Remote Control Data Structures KeyCode Prototype   enum KeyCode{VK_1, VK_2, VK_3, . . . } Description   Values for key code are theconstants whose names begin with “VK_” defined in the  org.havi.ui.event.HRcEvent and java.awt.event.KeyEvent classes.KeyType Prototype   enum KeyType { KEY_PRESSED, KEY_RELEASED}Description   Values for key type are the constants KEY_PRESSED andKEY_RELEASED defined   in java.awt.event.KeyEvent. Remote Control APIsRemoteControl::Connect Prototype   Status RemoteControl:: Connect (     out long cid ) Parameter   cid - identifier of the connection. Itallows starting several    connections from a single software componentand also permits    matching a response with a request. Description  This command allows a software element to open an asynchronous  connection. Each RemoteControl::Connect allows the Remote Control  FCM to manage a context per each connected client (connection  identifier and function to call in order to send data to its client).Error code    ERESOURCE_LIMIT: no more available cid, no more thread canbe created RemoteControl::Disconnect Prototype   StatusRemoteControl::Disconnect ( in long cid ) Parameter   cid - identifierof the connection between the client application and    the RemoteControl FCM (issued by a client application from a    previousRemoteControl::Connect call). Description   This function allows asoftware element to close a RemoteControl   connection. Error code   RemoteControl::ECONNECTION: cid doesn't exist   RemoteControl::ECLIENT: the client is not allowed to access thisconnection Remarks     Sending a RemoteControl::Disconnect message willabort any   other action being performed. Once a client called  RemoteControl::Disconnect, the cid is no longer available.RemoteControl:: IsSupported Prototype  Status RemoteControl::IsSupported(     in long cid,     in KeyCode keyCode,     out boolean keySupported)Parameter   cid - identifier of the connection between the clientapplication and    the Remote Control FCM (issued by a clientapplication from a    previous RemoteControl::Connect call).   keyCode -key code requested   keySupported - identifies whether the key issupported by the    remote control device Description   This API enablesan application to know if the code specified by the   key code issupported by the remote control Error code   RemoteControl::ECONNECTION: cid doesn't exist   RemoteControl::ECLIENT: the client is not allowed to access thisconnection RemoteControl::GetCapabilities Prototype  StatusRemoteControl::GetCapabilities(     in long cid,     out booleanforceFeedBackAvailable,     out boolean allKeysAvailable,     outboolean allArrowKeysAvailable,     out boolean allNumericKeysAvailable,    out boolean allColourKeysAvailable) Parameter   cid - identifier ofthe connection between the client application and    the Remote ControlFCM (issued by a client application from a    previousRemoteControl::Connect call).   forceFeedBackAvailable - identifieswhether force feedback is    available.   AllKeysAvailable - identifieswhether all keys are available   allArrowKeysAvailable - identifieswhether all arrow keys are available    (VK_LEFT, VK_RIGHT, VK_UP,VK_DOWN).   allNumericKeysAvailable - identifies whether all numerickeys are    available (VK_0, VK_1, VK_2, VK_3, VK_4, VK_5, VK_6, VK_7,   VK_8, VK_9).   allColourKeysAvailable - identifies whether all colorkeys are available    (VK_COLORED_KEY_0,    VK_COLORED_KEY_1,   VK_COLORED_KEY_2, VK_COLORED_KEY_3). RemoteControl:: AddKey Prototype Status RemoteControl::AddKey (     in long cid,     in KeyCode keyCode,    out boolean keyAdded) Parameter   cid - identifier of the connectionbetween the client application and    the Remote Control FCM (issued bya client application from a    previous RemoteControl::Connect call).  keyCode - key code requested   keyAdded - identifies whether the keyis added by the remote control    device Description   This API enablesan application to add it a key with the code specified   by the key codeError code    RemoteControl::ECONNECTION: cid doesn't exist   RemoteControl::ECLIENT: the client is not allowed to access thisconnection RemoteControl:: RemoveKey Prototype  StatusRemoteControl::RemoveKey (     in long cid,     in KeyCode keyCode,    out boolean keyRemoved) Parameter   cid - identifier of theconnection between the client application and    the Remote Control FCM(issued by a client application from a    previousRemoteControl::Connect call).   keyCode - key code requested  keyRemoved - identifies whether the key is removed by the remote   control device Description   This API enables an application toremove it a key with the code   specified by the key code Error code   RemoteControl::ECONNECTION: cid doesn't exist   RemoteControl::ECLIENT: the client is not allowed to access thisconnection RemoteControl:: AddAllKeys Prototype  StatusRemoteControl::AddAllKeys (     in long cid,     out booleanallKeysAdded) Parameter   cid - identifier of the connection between theclient application and    the Remote Control FCM (issued by a clientapplication from a    previous RemoteControl::Connect call).  allKeyAdded - identifies whether all keys are added by the remote   control device Description   This API enables an application to addit all keys. Error code    RemoteControl::ECONNECTION: cid doesn't exist   RemoteControl::ECLIENT: the client is not allowed to access thisconnection RemoteControl:: RemoveAllKeys Prototype  StatusRemoteControl::RemoveAllKeys (     in long cid,     out booleanallKeysRemoved) Parameter   cid - identifier of the connection betweenthe client application and    the Remote Control FCM (issued by a clientapplication from a    previous RemoteControl::Connect call).  allKeyRemoved - identifies whether all keys are added by the    remotecontrol device Description   This API enables an application to removeit all keys. Error code    RemoteControl::ECONNECTION: cid doesn't exist   RemoteControl::ECLIENT: the client is not allowed to access thisconnection RemoteControl:: AddAllArrowKeys Prototype  StatusRemoteControl::AddAllArrowKeys (     in long cid,     out booleanallArrowKeysAdded) Parameter   cid - identifier of the connectionbetween the client application and    the Remote Control FCM (issued bya client application from a    previous RemoteControl::Connect call).  allArrowKeysAdded - identifies whether arrow keys are added by    theremote control device Description   This API enables an application toadd it all arrow keys (VK_LEFT,   VK_RIGHT, VK_UP, VK_DOWN). Error code   RemoteControl::ECONNECTION: cid doesn't exist   RemoteControl::ECLIENT: the client is not allowed to access thisconnection RemoteControl:: RemoveAllArrowKeys Prototype  StatusRemoteControl::RemoveAllArrowKeys (     in long cid,     out booleanallArrowKeysRemoved) Parameter   cid - identifier of the connectionbetween the client application and    the Remote Control FCM (issued bya client application from a    previous RemoteControl::Connect call).  allArrowKeysRemoved - identifies whether all keys are added by    theremote control device Description   This API enables an application toremove it all arrow keys (VK_LEFT,   VK_RIGHT, VK_UP, VK_DOWN). Errorcode    RemoteControl::ECONNECTION: cid doesn't exist   RemoteControl::ECLIENT: the client is not allowed to access thisconnection RemoteControl:: AddAllNumericKeys Prototype  StatusRemoteControl::AddAllNumericKeys (     in long cid,     out booleanallNumericKeysAdded) Parameter   cid - identifier of the connectionbetween the client application and    the Remote Control FCM (issued bya client application from a    previous RemoteControl::Connect call).  allNumericKeysAdded - identifies whether all numeric keys are added   by the remote control device Description   This API enables anapplication to add it all numeric keys (VK_0, VK_1,   VK_2, VK_3, VK_4,VK_5, VK_6, VK_7, VK_8, VK_9). Error code    RemoteControl::ECONNECTION:cid doesn't exist    RemoteControl::ECLIENT: the client is not allowedto access this connection RemoteControl:: RemoveAllNumericKeys Prototype Status RemoteControl::RemoveAllNumericKeys (     in long cid,     outboolean allNumericKeysRemoved) Parameter   cid - identifier of theconnection between the client application and    the Remote Control FCM(issued by a client application from a    previousRemoteControl::Connect call).   allNumericKeysRemoved - identifieswhether numeric keys are    added by the remote control deviceDescription   This API enables an application to remove it all numerickeys (VK_0,   VK_1, VK_2, VK_3, VK_4, VK_5, VK_6, VK_7, VK_8, VK_9).Error code    RemoteControl::ECONNECTION: cid doesn't exist   RemoteControl::ECLIENT: the client is not allowed to access thisconnection RemoteControl:: AddAllColorKeys Prototype  StatusRemoteControl::AddAllColorKeys (     in long cid,     out booleanallColorKeysAdded) Parameter   cid - identifier of the connectionbetween the client application and    the Remote Control FCM (issued bya client application from a    previous RemoteControl::Connect call).  allColorKeyAdded - identifies whether all color keys are added by   the remote control device Description   This API enables anapplication to add it all color keys   (VK_COLORED_KEY_0, VK_COLORED_KEY_1,  VK_COLORED_KEY_2,   VK_COLORED_KEY_3). Error code   RemoteControl::ECONNECTION: cid doesn't exist   RemoteControl::ECLIENT: the client is not allowed to access thisconnection RemoteControl:: RemoveAllColorKeys Prototype  StatusRemoteControl::RemoveAllColorKeys (     in long cid,     out booleanallColorKeysRemoved) Parameter   cid - identifier of the connectionbetween the client application and    the Remote Control FCM (issued bya client application from a    previous RemoteControl::Connect call).  allColorKeyRemoved - identifies whether all color keys are added    bythe remote control device Description   This API enables an applicationto remove it all color keys   (VK_COLORED_KEY_0,  VK_COLORED_KEY_1, VK_COLORED_KEY_2,   VK_COLORED_KEY_3). Error code   RemoteControl::ECONNECTION: cid doesn't exist   RemoteControl::ECLIENT: the client is not allowed to access thisconnection RemoteControl:: ForceFeedbackEvent Prototype  StatusRemoteControl::ForceFeedbackEvent (     in long cid,     in octetforceFeedbackIntensity) Parameter   cid - identifier of the connectionbetween the client application and    the Remote Control FCM (issued bya client application from a    previous RemoteControl::Connect call).  forceFeedbackIntensity - intensity of the force feedback (from 0    to127) Description   This API enables an application to send a forcefeedback event to the   remote control. Error code   RemoteControl::ECONNECTION: cid doesn't exist   RemoteControl::ECLIENT: the client is not allowed to access thisconnection <Client>::RCEvent Prototype  Status <Client>::RCEvent (    in long cid,     in KeyCode keyCode,     in KeyType keyType)Parameter   cid - identifier of the connection between the clientapplication and    the Remote Control FCM (issued by a clientapplication from a    previous RemoteControl::Connect call).   keyCode -informs the software element client with the identifier of    the keypressed (key code).   keyType -- informs the software element clientwith the key pressed    event type (KEY_PRESSED or KEY_RELEASED)Description   This command causes the server (File Manager FCM) totransfer a   copy of the file, specified in the pathname. The status andcontents of   the file at the server site shall be unaffected. Errorcode    EINVALID_PARAMETER: cid is unknown for the client

1. Method of controlling a number of first devices linked by acommunication network to a second device associated with a controldevice which is dedicated to said second device, the control devicecomprising a plurality of command input means, wherein the methodcomprises the steps: receiving, on each first device via said seconddevice, a list of the plurality of command input means of the controldevice, on each first device to be controlled, configuring at least oneassociation between a function of the first device and a particularcommand input means included in the list received, and transmitting theat least one association by a request from the first device to amanagement interface of the control device available in the seconddevice, and when the particular command input means of the controldevice is activated, transmitting from the second device to the firstdevice having the function associated with this particular command inputmeans control information identifying the activated command input meansin order to execute the function on the first device.
 2. Control methodaccording to claim 1, wherein, in response to a configuration request,the method includes a sending of information indicating the absence ofavailability on the second device of the particular command input meansidentified in the request.
 3. Control method according to claim 1,wherein, in response to a configuration request, the method includes asending of information indicating the validation of the association onthe second device of the input means identified in the request, and theindication of other first devices associated with this means.
 4. Controlmethod according to claim 1, wherein the method includes a deleting ofan association between the at least one first device and one or moreinput means when said first device is deactivated.
 5. Control methodaccording to claim 1, wherein a configuration request associates anumber of command input means having a common characteristic with afirst device.
 6. Control method according to claim 1 wherein it includesa transmission of the list of command input means available on thesecond device.
 7. Control method according to claim 1 wherein, inresponse to a status request sent by a first device, the method includesa transmission by the second device of the list of associationsprogrammed in the preceding configuration steps.
 8. Device having ameans of connection with a communication network and receiving signalsfrom a dedicated control device provided with command input means;wherein the connection means sends to another device connected to thenetwork a list of the input means of the dedicated control device and inthat it includes an association means activated by this other deviceconnected to the network, said association means storing in memoryassociation data between a particular command input means in the listand the identifier of this other device, the connection meanstransmitting a block of data when a command is input on the dedicatedcontrol device, said data block including an identifier of the commandentered and being intended for the device associated with this command.9. Device according to claim 8, wherein the device includes a means ofreception via the communication network of association data to bestored.
 10. Device according to claim 8, wherein the device includes ameans of correlation between association data received from anidentified device and data already stored, and a means of transmitting anon-availability message when the command input means indicated in thereceived data is already associated with other device.
 11. Deviceaccording to claim 9, wherein the device includes a means of correlationbetween association data received from an identified device and the dataalready stored, and a means of transmitting an availability message whenthe command input means indicated in the received data is not associatedwith another device, the association data then being written in memory.12. Device according to claim 8, wherein the device includes a means ofreceiving a deactivation signal from another device linked to thenetwork triggering the deletion of the association data associated withthis other device.
 13. Device according to claim 8, wherein the deviceincludes a means of transmitting association data stored in memoryactivated following a request from another device connected to thenetwork.
 14. Device according to claim 8, wherein the device includes ameans of transmitting the list of identifiers of the remote controlinput means, said transmitting means being activated following a requestfrom another device connected to the network.